let express = require("express")
let cookie_parser = require("cookie-parser")
let app = express()

// 隐藏服务器的具体实现
app.disable("x-powered-by")
// 使用cookie-parser, 解析浏览器携带过来的cookie为一个对象, 挂载到request上
app.use(cookie_parser())

// 种cookie
app.get("/test1", function(req, resp){
    // 当访问test1路由, 会给客户端种下一个cookie
    // express中给客户端种一个cookie, 不用借助任何第三方库

    // 给客户端种下一个会话cookie
    // resp.cookie("demo", 123)

    // 给客户端种下一个持久化cookie
    resp.cookie("demo", 123, {maxAge: 30*1000}) 

    resp.send("<h2>我给你种下了一个cookie, 你快看一下吧</h2>")
})

// 读cookie
app.get("/test2", function(req, resp){
    // 当访问test2路由, 会获取浏览器携带过来的cookie
    // express中更方便获取客户端携带过来的cookie, 需要借助一个中间件, 名字: cookie-parser
    console.log(req.cookies) // { demo: '123' }
    let {demo} = req.cookies
    console.log(demo)

    resp.send("<h2>尝试解析cookie</h2>")
})

// 删cookie
app.get("/test3", function(req, resp){
    // 第一种方式
    // resp.cookie("demo", "", {maxAge: 0})

    // 第二种方式
    resp.clearCookie("demo")

    resp.send("<h2>我删除了cookie</h2>")
})

app.listen(3000, (err) => {
    if(!err){
        console.log("服务端启动成功")
    }else{
        console.log(err)
    }
})